package com.ponhu.ea2.stockcenter.provider.entity;

import com.baomidou.mybatisplus.annotation.*;

import java.io.Serializable;
import java.util.Date;

import lombok.Data;
import lombok.experimental.Accessors;

/**
 * 仓库库存变动表
 *
 * @TableName ph_stock_inventory_warehouse_change
 */
@Data
@Accessors(chain = true)
@TableName(value = "ph_stock_inventory_warehouse_change")
public class StockWarehouseChange implements Serializable {

    /**
     * 主键ID
     */
    @TableId(type = IdType.AUTO)
    private Long id;

    /**
     * 货品ID
     */
    private Long inventoryId;

    /**
     * 货品编码
     */
    private String inventoryCode;

    /**
     * 调入仓库编码
     */
    private String inWarehouseCode;

    /**
     * 调入仓库是否可售
     */
    private Boolean inWarehouseSale;

    /**
     * 调出仓库编码
     */
    private String outWarehouseCode;

    /**
     * 调出仓库是否可售
     */
    private Boolean outWarehouseSale;

    /**
     * 调拨单号
     */
    private String transferNo;

    /**
     * 业务单号
     */
    private String directSn;

    /**
     * 变动类型：200-调拨申请 201-调出 202-调入 203-销售出库 204-销退入库
     * 205-采退出库 206-采购入库 207-盘亏出库 208-盘盈入库 209-其他
     */
    private Integer actionType;

    /**
     * 库存变动数量
     */
    private Integer updatedNum;

    /**
     * 变动说明
     */
    private String optRemark;

    /**
     * 创建时间
     */
    private Date createTime;

    /**
     * 唯一标识
     */
    private String uniqueCode;

    public Integer getUpdatedNumAbs() {
        return Math.abs(updatedNum);
    }

}